package com.voxel.sense.infomsg.module.publish;

import com.example.com.common.app.BaseContract;

import java.io.File;
import java.util.List;

/**
 * Created by ChenYiYao on 2018/8/31.
 */
public interface PublishContract {
    interface View extends BaseContract.View<Presenter> {
        /**
         * 刷新发布类型的ui
         */
        void onUpTypeUi(List list);

        /**
         * 刷新公司列表
         *
         * @param list
         */
        void onShowFirmList(List list);

        /**
         * 拉起图片选择器
         *
         * @param list
         */
        void onShowPickPhotoUI(List<String> list);

        /**
         * 刷新选中的图片
         *
         * @param list
         */
        void onRefreshSelectPhoto(List list);

        //上传成功
        void onSubmitSuccess();

        //上传失败
        void onSubmitFailed();


    }

    interface Presenter extends BaseContract.Presenter {

        /**
         * 加载发布类型的数据
         */
        void doLoadTypeData();


        /**
         * 获取所有的公司
         */
        void doLoadFirmList();

        /**
         * 已存在的数据
         *
         * @param file 拍照得到的文件
         */
        void doHanlderTakePhotoResult(File file);


        /**
         * 处理选择图片回调后的数据
         *
         * @param strings 选择的图片路径集合
         */
        void doHandlerSelectPicResult(List<String> strings);

        /**
         * @param textContent 反馈内容
         * @param firmName    公司名
         * @param id          公司id
         * @param type        类型
         */
        void doSubmitContent(String textContent, String firmName, String id, String type, List<String> files);
    }


}
